#ifndef __STATEMENT_H__
#define __STATEMENT_H__


struct _Statement {
	char* s;
	char* p;
	char* o;
	int op;
	struct _Statement* next;
};

typedef struct _Statement Statement;


Statement* stmt_new(const char* s, const char* p, const char* o, int op);
void stmt_delete(Statement* stmt);
void stmt_prepend(Statement** list, Statement* stmt);
int stmt_match(Statement* mask, Statement* stmt);
int stmt_count(Statement* stmt);
Statement* stmt_clone(Statement* h);


#endif /* __STATEMENT_H__ */
